﻿Imports Testeitor.DAO
Imports Testeitor.Entidades

Public Class CasoDeUso
    Implements IOperaciones

    Private _lista As System.Collections.Generic.List(Of Entidades.EntityBase)

    Private Sub actualizarGrilla()
        Dim rolDao As New RolDAO()
        _lista = rolDao.SeleccionarTodas()

        cargarGrilla(Util.Converteitor(_lista, Util.TipoEntidad.CASO_DE_USO))
    End Sub

    Public Sub agregar() Implements IOperaciones.agregar
        Dim dialogCaso As New DialogCasoUso(Util.Operacion.GUARDAR)
        dialogCaso.ShowDialog()
        Me.actualizarGrilla()
    End Sub

    Public Sub modificar() Implements IOperaciones.modificar
        Dim dialogCaso As New DialogCasoUso(Util.Operacion.MODIFICAR)
        dialogCaso.cargarDatos(Util.obtenerEntidad(_lista))
        dialogCaso.ShowDialog()
        Me.actualizarGrilla()
    End Sub

    Public Sub eliminar() Implements IOperaciones.eliminar
        Dim dialogCaso As New DialogCasoUso(Util.Operacion.ELIMINAR)
        dialogCaso.cargarDatos(Util.obtenerEntidad(_lista))
        dialogCaso.ShowDialog()
        Me.actualizarGrilla()
    End Sub

    Public Sub cargarGrilla(ByVal lista As IList)
        Dim columnas As List(Of String) = New List(Of String)
        columnas.Add("ID")
        columnas.Add("Numero")
        columnas.Add("Titulo")
        columnas.Add("Objetivo")
        columnas.Add("Descripcion")
        columnas.Add("Autor")
        columnas.Add("Proyecto")
        columnas.Add("url")

        Dim campos As List(Of String) = New List(Of String)
        campos.Add("Id")
        campos.Add("Numero")
        campos.Add("Titulo")
        campos.Add("Objetivo")
        campos.Add("Descripcion")
        campos.Add("Autor")
        campos.Add("proyecto_id")
        campos.Add("url")

        Util.cargarGrilla(TestieitorGui.dgvGrilla, columnas, campos, lista)
    End Sub

    Private Sub CasoDeUso_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        _lista = New System.Collections.Generic.List(Of Entidades.EntityBase)
    End Sub
End Class
